Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace lodash-es with es-toolkit #17496

Closed
wants to merge 69 commits into from

Conversation

filipsobol
Copy link
Member

@filipsobol filipsobol commented Nov 20, 2024

Suggested merge commit message (convention)

Other: Replace lodash-es with es-toolkit.


You can find more information about why we make this change here: #16395 (comment)

arkflpc
arkflpc previously approved these changes Nov 20, 2024
@Witoso
Copy link
Member

Witoso commented Nov 20, 2024

TBH, this is the first time I heard we keep lodash... I thought it's 1:1 replacement, and having two libs makes less sense for me.

R- from me, as it's increasing dependencies count w/o discussing this openly. And what are potential workarounds for this.

@filipsobol
Copy link
Member Author

We've decided to put this on hold until extend and cloneDeepWith are available in es-toolkit.

I'll also contribute to the isElement implementation because it cannot be replaced with simple instanceof HTMLElement in our case (as I did in the PR).

niegowski and others added 21 commits December 16, 2024 12:43
Co-authored-by: Szymon Cofalik <s.cofalik@cksource.com>
Fix (engine): The link `rel` attribute will now allow mixing manual link decorators for the same attribute, as it will be now handled as a token list. Closes #13985, closes #6436.

Fix (mention): Mention should not be wrapped with an additional `<span>` when GHS is enabled. Closes #15329.

Internal (html-support): Attribute matching updated to the new output of `Matcher#matchAll()`.

MINOR BREAKING CHANGE (engine): The `ViewConsumable.consumablesFromElement()` is removed and replaced with `view.Element#_getConsumables()` internal method. You should use `ViewConsumable.createFrom()` To create consumables if needed.

MINOR BREAKING CHANGE (engine): The `ViewElementConsumables` now accepts and outputs only normalized data. The `ViewConsumable` still accepts normalized or non-normalized input.

MINOR BREAKING CHANGE (engine): The `Matcher#match()` and `Matcher#matchAll()` output is now normalized. The `MatchResult#match` now contains normalized data compatible with changes in the `ViewConsumable`.
Internal: Fixed invalid links in docs snippets.
@filipsobol filipsobol force-pushed the replace-lodash-es-with-es-toolkit branch from f3ed2e4 to ef1a008 Compare February 3, 2025 11:57
@filipsobol filipsobol requested a review from arkflpc February 3, 2025 12:13
@filipsobol filipsobol changed the base branch from master to master-it84 February 3, 2025 12:51
@filipsobol
Copy link
Member Author

The work will continue in #17872.

@filipsobol filipsobol closed this Feb 3, 2025
@filipsobol filipsobol deleted the replace-lodash-es-with-es-toolkit branch February 3, 2025 13:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants